﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            //Задача 7.19   Напишите программу, которая вводит с клавиатуры два 
            //непустых неубывающих массива целых чисел, 
            //и печатает те и только те элементы, которые входят только в один из массивов 
            //(симметрическая разность множеств).

            int[] ar = { 0, 0, 3, 8, 10, 15, 20, 20, 20, 22, 30, 40, 50 };
            int[] ar1 = { 1, 2, 2, 2, 10, 11, 20, 20, 30, 30, 30, 40, 50, 100, 100, 100 };
            int[] res = new int[ar.Length + ar1.Length];
            int index;
            int j = 0;

            for (int i = 0; i < ar.Length; i++)
            {
                index = Array.BinarySearch(ar1, ar[i]);
                if (index < 0 && (i == 0 || ar[i - 1] != ar[i]))
                {
                    res[j] = ar[i];
                    j++;
                }
            }
            for (int i = 0; i < ar1.Length; i++)
            {
                index = Array.BinarySearch(ar, ar1[i]);
                if (index < 0 && (i == 0 || ar1[i - 1] != ar1[i]))
                {
                    res[j] = ar1[i];
                    j++;
                }
            }
            Array.Resize(ref res, j);
            Array.Sort(res);

            Console.Write("result array: ");
            foreach (var element in res)
            {
                Console.Write(element + " ");
            }
            Console.WriteLine();
        }

    }
}
